The approaches described in this section are approaches that could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Network service providers may provide Ethernet connectivity across geographically disperse data centers as though each device is connected via a local area network. In particular, a Virtual Private LAN Service (VPLS) may provide a Layer 2 VPN that emulates a multipoint Ethernet LAN. VPLS “glues” together several individual LANs across a packet switched network to appear and function as a single LAN. VPLS incorporates Media Access Control (MAC) address learning and relies on network discovery protocols such as Border Gateway Protocol (BGP) to set up pseudowires between every pair of edge routers. A pseudowire is a tunnel that transports Layer 2 frames such as Ethernet over a Multi-Protocol Label Switching (MPLS)/Internet Protocol (IP) network. Pseudowires may be identified by an MPLS label which identifies the virtual LAN and the source provider edge router. More information on VPLS is provided in Request for Comment (RFC) 4761 of the Internet Engineering Task Force (IETF), and familiarity with RFC 4761 is presumed in this disclosure.
Border Gateway Protocol (BGP) can be used for auto-discovery and signaling by network provider edge devices. A BGP-enabled network element (a BGP host or peer) may exchange network reachability information with other BGP-enabled network elements. The most commonly implemented version of BGP is BGP-4, which is defined in RFC1771 (published by the Internet Engineering Task Force (IETF) in March 1995).
The Label Distribution Protocol (LDP) is defined by IETF RFC 5036 for the purpose of distributing labels in an MPLS environment. LDP relies on network routing information such as is provided by Internal Gateway Protocol (IGP) or Open Shortest Path First (OSPF). The router forwarding information base, or FIB, is responsible for determining the hop-by-hop path through the network. LDP assigns and distributes labels for each path in the internal network.
Routers may send an IGP route advertisement, as defined in RFC 2328, RFC 1195, to advertise its participation in the network used for transport of VPLS service frames. The advertisement may include a list of active connections with neighboring routers. A provider edge router may send a BGP Layer 2 Network Layer Reachability Information (NLRI) (described in RFC 4761) for establishing pseudowires with each other provider edge router. Each edge router has a unique identifier within the VPLS network which is the VPLS Edge ID.
As frames traverse the network, a table is created that associates the MAC address with the pseudowire over which they were received. There is only one table entry per MAC address. Each time a frame is received with a different MAC address/pseudowire mapping, the table is updated to reflect the change.
The internet-draft document entitled draft-ietf-12vpn-vpls-multihoming describes extending the signaling procedures of RFC 4761 by defining a “Multi-homing NLRI” where a multi-homing ID is used in place of the VPLS Edge ID. Multi-homing allows a single VPLS ID to represent multiple edge routers. This may be used when a customer edge device is connected to more than one edge router (i.e. is multi-homed). However, multi-homing BGP is intended to be used in the context where a multi-homed customer edge device is connected to only one active edge router at a time. Other edge routers to which the CE may be connected are standby routers in case failover becomes necessary. Thus, at any point in time, there is only one active edge router over which to send and receive traffic.
MPLS effectively allows the creation of high-speed switches, circumventing the processing of more extensive header information in higher level protocols, such as IP. MPLS also provides the ability to support multiple service models, do traffic management, and perform other networking functions, with a relatively simple header. MPLS appends an MPLS header containing one or more ‘labels’ called a label stack in front of headers of other higher layer protocols. MPLS is described in IETF RFC 3031 and RFC 3032. All of the IETF RFC's mentioned in the instant application are available at the time of this writing on the World Wide Web (www) at domain ietf.org and are hereby incorporated by reference as if fully set forth herein, and familiarity with the RFCs is assumed.